package com.fengye.redisson.star.service;

import com.fengye.redisson.star.dto.PraiseRankDTO;

import java.util.List;

/**
 *
 * @author sky
 * @date 2021年06月16日 2:06 下午
 */

public interface RedisPraiseService {
    /**
     * 缓存当前用户点赞博客的记录-包括点赞、取消点赞
     * @param blogId 博客
     * @param uId 用户
     * @param status 状态
     */
    void cachePraiseBlog(Integer blogId, Integer uId, Integer status) throws Exception;

    /**
     * 根据博客 id 获取博客当前的总点赞数
     * @param blogId 博客
     * @return java.lang.Long
     */
    Long getCacheTotalBlog(Integer blogId) throws Exception;

    /**
     * 触发博客点赞总数排行榜
     */
    void rankBlogPraise() throws Exception;

    /**
     * 获取博客点赞总数排行榜
     * @return java.util.List<PraiseRankDTO>
     */
    List<PraiseRankDTO> getBlogPraiseRank() throws Exception;
}
